"use strict";
/*!-----------------------------------------------------------------------------
 * Copyright (c) Microsoft Corporation. All rights reserved.
 * Version: 0.34.1(547870b6881302c5b4ff32173c16d06009e3588f)
 * Released under the MIT license
 * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
 *-----------------------------------------------------------------------------*/
define("vs/basic-languages/pgsql/pgsql", ["require"], require => {
	var moduleExports = (() => {
		var __defProp = Object.defineProperty;
		var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
		var __getOwnPropNames = Object.getOwnPropertyNames;
		var __hasOwnProp = Object.prototype.hasOwnProperty;
		var __export = (target, all) => {
			for (var name in all)
				__defProp(target, name, { get: all[name], enumerable: true });
		};
		var __copyProps = (to, from, except, desc) => {
			if ((from && typeof from === "object") || typeof from === "function") {
				for (let key of __getOwnPropNames(from))
					if (!__hasOwnProp.call(to, key) && key !== except)
						__defProp(to, key, {
							get: () => from[key],
							enumerable:
								!(desc = __getOwnPropDesc(from, key)) || desc.enumerable
						});
			}
			return to;
		};
		var __toCommonJS = mod =>
			__copyProps(__defProp({}, "__esModule", { value: true }), mod);

		// src/basic-languages/pgsql/pgsql.ts
		var pgsql_exports = {};
		__export(pgsql_exports, {
			conf: () => conf,
			language: () => language
		});
		var conf = {
			comments: {
				lineComment: "--",
				blockComment: ["/*", "*/"]
			},
			brackets: [
				["{", "}"],
				["[", "]"],
				["(", ")"]
			],
			autoClosingPairs: [
				{ open: "{", close: "}" },
				{ open: "[", close: "]" },
				{ open: "(", close: ")" },
				{ open: '"', close: '"' },
				{ open: "'", close: "'" }
			],
			surroundingPairs: [
				{ open: "{", close: "}" },
				{ open: "[", close: "]" },
				{ open: "(", close: ")" },
				{ open: '"', close: '"' },
				{ open: "'", close: "'" }
			]
		};
		var language = {
			defaultToken: "",
			tokenPostfix: ".sql",
			ignoreCase: true,
			brackets: [
				{ open: "[", close: "]", token: "delimiter.square" },
				{ open: "(", close: ")", token: "delimiter.parenthesis" }
			],
			keywords: [
				"ALL",
				"ANALYSE",
				"ANALYZE",
				"AND",
				"ANY",
				"ARRAY",
				"AS",
				"ASC",
				"ASYMMETRIC",
				"AUTHORIZATION",
				"BINARY",
				"BOTH",
				"CASE",
				"CAST",
				"CHECK",
				"COLLATE",
				"COLLATION",
				"COLUMN",
				"CONCURRENTLY",
				"CONSTRAINT",
				"CREATE",
				"CROSS",
				"CURRENT_CATALOG",
				"CURRENT_DATE",
				"CURRENT_ROLE",
				"CURRENT_SCHEMA",
				"CURRENT_TIME",
				"CURRENT_TIMESTAMP",
				"CURRENT_USER",
				"DEFAULT",
				"DEFERRABLE",
				"DESC",
				"DISTINCT",
				"DO",
				"ELSE",
				"END",
				"EXCEPT",
				"FALSE",
				"FETCH",
				"FOR",
				"FOREIGN",
				"FREEZE",
				"FROM",
				"FULL",
				"GRANT",
				"GROUP",
				"HAVING",
				"ILIKE",
				"IN",
				"INITIALLY",
				"INNER",
				"INTERSECT",
				"INTO",
				"IS",
				"ISNULL",
				"JOIN",
				"LATERAL",
				"LEADING",
				"LEFT",
				"LIKE",
				"LIMIT",
				"LOCALTIME",
				"LOCALTIMESTAMP",
				"NATURAL",
				"NOT",
				"NOTNULL",
				"NULL",
				"OFFSET",
				"ON",
				"ONLY",
				"OR",
				"ORDER",
				"OUTER",
				"OVERLAPS",
				"PLACING",
				"PRIMARY",
				"REFERENCES",
				"RETURNING",
				"RIGHT",
				"SELECT",
				"SESSION_USER",
				"SIMILAR",
				"SOME",
				"SYMMETRIC",
				"TABLE",
				"TABLESAMPLE",
				"THEN",
				"TO",
				"TRAILING",
				"TRUE",
				"UNION",
				"UNIQUE",
				"USER",
				"USING",
				"VARIADIC",
				"VERBOSE",
				"WHEN",
				"WHERE",
				"WINDOW",
				"WITH"
			],
			operators: [
				"AND",
				"BETWEEN",
				"IN",
				"LIKE",
				"NOT",
				"OR",
				"IS",
				"NULL",
				"INTERSECT",
				"UNION",
				"INNER",
				"JOIN",
				"LEFT",
				"OUTER",
				"RIGHT"
			],
			builtinFunctions: [
				"abbrev",
				"abs",
				"acldefault",
				"aclexplode",
				"acos",
				"acosd",
				"acosh",
				"age",
				"any",
				"area",
				"array_agg",
				"array_append",
				"array_cat",
				"array_dims",
				"array_fill",
				"array_length",
				"array_lower",
				"array_ndims",
				"array_position",
				"array_positions",
				"array_prepend",
				"array_remove",
				"array_replace",
				"array_to_json",
				"array_to_string",
				"array_to_tsvector",
				"array_upper",
				"ascii",
				"asin",
				"asind",
				"asinh",
				"atan",
				"atan2",
				"atan2d",
				"atand",
				"atanh",
				"avg",
				"bit",
				"bit_and",
				"bit_count",
				"bit_length",
				"bit_or",
				"bit_xor",
				"bool_and",
				"bool_or",
				"bound_box",
				"box",
				"brin_desummarize_range",
				"brin_summarize_new_values",
				"brin_summarize_range",
				"broadcast",
				"btrim",
				"cardinality",
				"cbrt",
				"ceil",
				"ceiling",
				"center",
				"char_length",
				"character_length",
				"chr",
				"circle",
				"clock_timestamp",
				"coalesce",
				"col_description",
				"concat",
				"concat_ws",
				"convert",
				"convert_from",
				"convert_to",
				"corr",
				"cos",
				"cosd",
				"cosh",
				"cot",
				"cotd",
				"count",
				"covar_pop",
				"covar_samp",
				"cume_dist",
				"current_catalog",
				"current_database",
				"current_date",
				"current_query",
				"current_role",
				"current_schema",
				"current_schemas",
				"current_setting",
				"current_time",
				"current_timestamp",
				"current_user",
				"currval",
				"cursor_to_xml",
				"cursor_to_xmlschema",
				"date_bin",
				"date_part",
				"date_trunc",
				"database_to_xml",
				"database_to_xml_and_xmlschema",
				"database_to_xmlschema",
				"decode",
				"degrees",
				"dense_rank",
				"diagonal",
				"diameter",
				"div",
				"encode",
				"enum_first",
				"enum_last",
				"enum_range",
				"every",
				"exp",
				"extract",
				"factorial",
				"family",
				"first_value",
				"floor",
				"format",
				"format_type",
				"gcd",
				"gen_random_uuid",
				"generate_series",
				"generate_subscripts",
				"get_bit",
				"get_byte",
				"get_current_ts_config",
				"gin_clean_pending_list",
				"greatest",
				"grouping",
				"has_any_column_privilege",
				"has_column_privilege",
				"has_database_privilege",
				"has_foreign_data_wrapper_privilege",
				"has_function_privilege",
				"has_language_privilege",
				"has_schema_privilege",
				"has_sequence_privilege",
				"has_server_privilege",
				"has_table_privilege",
				"has_tablespace_privilege",
				"has_type_privilege",
				"height",
				"host",
				"hostmask",
				"inet_client_addr",
				"inet_client_port",
				"inet_merge",
				"inet_same_family",
				"inet_server_addr",
				"inet_server_port",
				"initcap",
				"isclosed",
				"isempty",
				"isfinite",
				"isopen",
				"json_agg",
				"json_array_elements",
				"json_array_elements_text",
				"json_array_length",
				"json_build_array",
				"json_build_object",
				"json_each",
				"json_each_text",
				"json_extract_path",
				"json_extract_path_text",
				"json_object",
				"json_object_agg",
				"json_object_keys",
				"json_populate_record",
				"json_populate_recordset",
				"json_strip_nulls",
				"json_to_record",
				"json_to_recordset",
				"json_to_tsvector",
				"json_typeof",
				"jsonb_agg",
				"jsonb_array_elements",
				"jsonb_array_elements_text",
				"jsonb_array_length",
				"jsonb_build_array",
				"jsonb_build_object",
				"jsonb_each",
				"jsonb_each_text",
				"jsonb_extract_path",
				"jsonb_extract_path_text",
				"jsonb_insert",
				"jsonb_object",
				"jsonb_object_agg",
				"jsonb_object_keys",
				"jsonb_path_exists",
				"jsonb_path_match",
				"jsonb_path_query",
				"jsonb_path_query_array",
				"jsonb_path_exists_tz",
				"jsonb_path_query_first",
				"jsonb_path_query_array_tz",
				"jsonb_path_query_first_tz",
				"jsonb_path_query_tz",
				"jsonb_path_match_tz",
				"jsonb_populate_record",
				"jsonb_populate_recordset",
				"jsonb_pretty",
				"jsonb_set",
				"jsonb_set_lax",
				"jsonb_strip_nulls",
				"jsonb_to_record",
				"jsonb_to_recordset",
				"jsonb_to_tsvector",
				"jsonb_typeof",
				"justify_days",
				"justify_hours",
				"justify_interval",
				"lag",
				"last_value",
				"lastval",
				"lcm",
				"lead",
				"least",
				"left",
				"length",
				"line",
				"ln",
				"localtime",
				"localtimestamp",
				"log",
				"log10",
				"lower",
				"lower_inc",
				"lower_inf",
				"lpad",
				"lseg",
				"ltrim",
				"macaddr8_set7bit",
				"make_date",
				"make_interval",
				"make_time",
				"make_timestamp",
				"make_timestamptz",
				"makeaclitem",
				"masklen",
				"max",
				"md5",
				"min",
				"min_scale",
				"mod",
				"mode",
				"multirange",
				"netmask",
				"network",
				"nextval",
				"normalize",
				"now",
				"npoints",
				"nth_value",
				"ntile",
				"nullif",
				"num_nonnulls",
				"num_nulls",
				"numnode",
				"obj_description",
				"octet_length",
				"overlay",
				"parse_ident",
				"path",
				"pclose",
				"percent_rank",
				"percentile_cont",
				"percentile_disc",
				"pg_advisory_lock",
				"pg_advisory_lock_shared",
				"pg_advisory_unlock",
				"pg_advisory_unlock_all",
				"pg_advisory_unlock_shared",
				"pg_advisory_xact_lock",
				"pg_advisory_xact_lock_shared",
				"pg_backend_pid",
				"pg_backup_start_time",
				"pg_blocking_pids",
				"pg_cancel_backend",
				"pg_client_encoding",
				"pg_collation_actual_version",
				"pg_collation_is_visible",
				"pg_column_compression",
				"pg_column_size",
				"pg_conf_load_time",
				"pg_control_checkpoint",
				"pg_control_init",
				"pg_control_recovery",
				"pg_control_system",
				"pg_conversion_is_visible",
				"pg_copy_logical_replication_slot",
				"pg_copy_physical_replication_slot",
				"pg_create_logical_replication_slot",
				"pg_create_physical_replication_slot",
				"pg_create_restore_point",
				"pg_current_logfile",
				"pg_current_snapshot",
				"pg_current_wal_flush_lsn",
				"pg_current_wal_insert_lsn",
				"pg_current_wal_lsn",
				"pg_current_xact_id",
				"pg_current_xact_id_if_assigned",
				"pg_current_xlog_flush_location",
				"pg_current_xlog_insert_location",
				"pg_current_xlog_location",
				"pg_database_size",
				"pg_describe_object",
				"pg_drop_replication_slot",
				"pg_event_trigger_ddl_commands",
				"pg_event_trigger_dropped_objects",
				"pg_event_trigger_table_rewrite_oid",
				"pg_event_trigger_table_rewrite_reason",
				"pg_export_snapshot",
				"pg_filenode_relation",
				"pg_function_is_visible",
				"pg_get_catalog_foreign_keys",
				"pg_get_constraintdef",
				"pg_get_expr",
				"pg_get_function_arguments",
				"pg_get_function_identity_arguments",
				"pg_get_function_result",
				"pg_get_functiondef",
				"pg_get_indexdef",
				"pg_get_keywords",
				"pg_get_object_address",
				"pg_get_owned_sequence",
				"pg_get_ruledef",
				"pg_get_serial_sequence",
				"pg_get_statisticsobjdef",
				"pg_get_triggerdef",
				"pg_get_userbyid",
				"pg_get_viewdef",
				"pg_get_wal_replay_pause_state",
				"pg_has_role",
				"pg_identify_object",
				"pg_identify_object_as_address",
				"pg_import_system_collations",
				"pg_index_column_has_property",
				"pg_index_has_property",
				"pg_indexam_has_property",
				"pg_indexes_size",
				"pg_is_in_backup",
				"pg_is_in_recovery",
				"pg_is_other_temp_schema",
				"pg_is_wal_replay_paused",
				"pg_is_xlog_replay_paused",
				"pg_jit_available",
				"pg_last_committed_xact",
				"pg_last_wal_receive_lsn",
				"pg_last_wal_replay_lsn",
				"pg_last_xact_replay_timestamp",
				"pg_last_xlog_receive_location",
				"pg_last_xlog_replay_location",
				"pg_listening_channels",
				"pg_log_backend_memory_contexts",
				"pg_logical_emit_message",
				"pg_logical_slot_get_binary_changes",
				"pg_logical_slot_get_changes",
				"pg_logical_slot_peek_binary_changes",
				"pg_logical_slot_peek_changes",
				"pg_ls_archive_statusdir",
				"pg_ls_dir",
				"pg_ls_logdir",
				"pg_ls_tmpdir",
				"pg_ls_waldir",
				"pg_mcv_list_items",
				"pg_my_temp_schema",
				"pg_notification_queue_usage",
				"pg_opclass_is_visible",
				"pg_operator_is_visible",
				"pg_opfamily_is_visible",
				"pg_options_to_table",
				"pg_partition_ancestors",
				"pg_partition_root",
				"pg_partition_tree",
				"pg_postmaster_start_time",
				"pg_promote",
				"pg_read_binary_file",
				"pg_read_file",
				"pg_relation_filenode",
				"pg_relation_filepath",
				"pg_relation_size",
				"pg_reload_conf",
				"pg_replication_origin_advance",
				"pg_replication_origin_create",
				"pg_replication_origin_drop",
				"pg_replication_origin_oid",
				"pg_replication_origin_progress",
				"pg_replication_origin_session_is_setup",
				"pg_replication_origin_session_progress",
				"pg_replication_origin_session_reset",
				"pg_replication_origin_session_setup",
				"pg_replication_origin_xact_reset",
				"pg_replication_origin_xact_setup",
				"pg_replication_slot_advance",
				"pg_rotate_logfile",
				"pg_safe_snapshot_blocking_pids",
				"pg_size_bytes",
				"pg_size_pretty",
				"pg_sleep",
				"pg_sleep_for",
				"pg_sleep_until",
				"pg_snapshot_xip",
				"pg_snapshot_xmax",
				"pg_snapshot_xmin",
				"pg_start_backup",
				"pg_stat_file",
				"pg_statistics_obj_is_visible",
				"pg_stop_backup",
				"pg_switch_wal",
				"pg_switch_xlog",
				"pg_table_is_visible",
				"pg_table_size",
				"pg_tablespace_databases",
				"pg_tablespace_location",
				"pg_tablespace_size",
				"pg_terminate_backend",
				"pg_total_relation_size",
				"pg_trigger_depth",
				"pg_try_advisory_lock",
				"pg_try_advisory_lock_shared",
				"pg_try_advisory_xact_lock",
				"pg_try_advisory_xact_lock_shared",
				"pg_ts_config_is_visible",
				"pg_ts_dict_is_visible",
				"pg_ts_parser_is_visible",
				"pg_ts_template_is_visible",
				"pg_type_is_visible",
				"pg_typeof",
				"pg_visible_in_snapshot",
				"pg_wal_lsn_diff",
				"pg_wal_replay_pause",
				"pg_wal_replay_resume",
				"pg_walfile_name",
				"pg_walfile_name_offset",
				"pg_xact_commit_timestamp",
				"pg_xact_commit_timestamp_origin",
				"pg_xact_status",
				"pg_xlog_location_diff",
				"pg_xlog_replay_pause",
				"pg_xlog_replay_resume",
				"pg_xlogfile_name",
				"pg_xlogfile_name_offset",
				"phraseto_tsquery",
				"pi",
				"plainto_tsquery",
				"point",
				"polygon",
				"popen",
				"position",
				"power",
				"pqserverversion",
				"query_to_xml",
				"query_to_xml_and_xmlschema",
				"query_to_xmlschema",
				"querytree",
				"quote_ident",
				"quote_literal",
				"quote_nullable",
				"radians",
				"radius",
				"random",
				"range_agg",
				"range_intersect_agg",
				"range_merge",
				"rank",
				"regexp_match",
				"regexp_matches",
				"regexp_replace",
				"regexp_split_to_array",
				"regexp_split_to_table",
				"regr_avgx",
				"regr_avgy",
				"regr_count",
				"regr_intercept",
				"regr_r2",
				"regr_slope",
				"regr_sxx",
				"regr_sxy",
				"regr_syy",
				"repeat",
				"replace",
				"reverse",
				"right",
				"round",
				"row_number",
				"row_security_active",
				"row_to_json",
				"rpad",
				"rtrim",
				"scale",
				"schema_to_xml",
				"schema_to_xml_and_xmlschema",
				"schema_to_xmlschema",
				"session_user",
				"set_bit",
				"set_byte",
				"set_config",
				"set_masklen",
				"setseed",
				"setval",
				"setweight",
				"sha224",
				"sha256",
				"sha384",
				"sha512",
				"shobj_description",
				"sign",
				"sin",
				"sind",
				"sinh",
				"slope",
				"split_part",
				"sprintf",
				"sqrt",
				"starts_with",
				"statement_timestamp",
				"stddev",
				"stddev_pop",
				"stddev_samp",
				"string_agg",
				"string_to_array",
				"string_to_table",
				"strip",
				"strpos",
				"substr",
				"substring",
				"sum",
				"suppress_redundant_updates_trigger",
				"table_to_xml",
				"table_to_xml_and_xmlschema",
				"table_to_xmlschema",
				"tan",
				"tand",
				"tanh",
				"text",
				"timeofday",
				"timezone",
				"to_ascii",
				"to_char",
				"to_date",
				"to_hex",
				"to_json",
				"to_number",
				"to_regclass",
				"to_regcollation",
				"to_regnamespace",
				"to_regoper",
				"to_regoperator",
				"to_regproc",
				"to_regprocedure",
				"to_regrole",
				"to_regtype",
				"to_timestamp",
				"to_tsquery",
				"to_tsvector",
				"transaction_timestamp",
				"translate",
				"trim",
				"trim_array",
				"trim_scale",
				"trunc",
				"ts_debug",
				"ts_delete",
				"ts_filter",
				"ts_headline",
				"ts_lexize",
				"ts_parse",
				"ts_rank",
				"ts_rank_cd",
				"ts_rewrite",
				"ts_stat",
				"ts_token_type",
				"tsquery_phrase",
				"tsvector_to_array",
				"tsvector_update_trigger",
				"tsvector_update_trigger_column",
				"txid_current",
				"txid_current_if_assigned",
				"txid_current_snapshot",
				"txid_snapshot_xip",
				"txid_snapshot_xmax",
				"txid_snapshot_xmin",
				"txid_status",
				"txid_visible_in_snapshot",
				"unistr",
				"unnest",
				"upper",
				"upper_inc",
				"upper_inf",
				"user",
				"var_pop",
				"var_samp",
				"variance",
				"version",
				"websearch_to_tsquery",
				"width",
				"width_bucket",
				"xml_is_well_formed",
				"xml_is_well_formed_content",
				"xml_is_well_formed_document",
				"xmlagg",
				"xmlcomment",
				"xmlconcat",
				"xmlelement",
				"xmlexists",
				"xmlforest",
				"xmlparse",
				"xmlpi",
				"xmlroot",
				"xmlserialize",
				"xpath",
				"xpath_exists"
			],
			builtinVariables: [],
			pseudoColumns: [],
			tokenizer: {
				root: [
					{ include: "@comments" },
					{ include: "@whitespace" },
					{ include: "@pseudoColumns" },
					{ include: "@numbers" },
					{ include: "@strings" },
					{ include: "@complexIdentifiers" },
					{ include: "@scopes" },
					[/[;,.]/, "delimiter"],
					[/[()]/, "@brackets"],
					[
						/[\w@#$]+/,
						{
							cases: {
								"@operators": "operator",
								"@builtinVariables": "predefined",
								"@builtinFunctions": "predefined",
								"@keywords": "keyword",
								"@default": "identifier"
							}
						}
					],
					[/[<>=!%&+\-*/|~^]/, "operator"]
				],
				whitespace: [[/\s+/, "white"]],
				comments: [
					[/--+.*/, "comment"],
					[/\/\*/, { token: "comment.quote", next: "@comment" }]
				],
				comment: [
					[/[^*/]+/, "comment"],
					[/\*\//, { token: "comment.quote", next: "@pop" }],
					[/./, "comment"]
				],
				pseudoColumns: [
					[
						/[$][A-Za-z_][\w@#$]*/,
						{
							cases: {
								"@pseudoColumns": "predefined",
								"@default": "identifier"
							}
						}
					]
				],
				numbers: [
					[/0[xX][0-9a-fA-F]*/, "number"],
					[/[$][+-]*\d*(\.\d*)?/, "number"],
					[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/, "number"]
				],
				strings: [[/'/, { token: "string", next: "@string" }]],
				string: [
					[/[^']+/, "string"],
					[/''/, "string"],
					[/'/, { token: "string", next: "@pop" }]
				],
				complexIdentifiers: [
					[/"/, { token: "identifier.quote", next: "@quotedIdentifier" }]
				],
				quotedIdentifier: [
					[/[^"]+/, "identifier"],
					[/""/, "identifier"],
					[/"/, { token: "identifier.quote", next: "@pop" }]
				],
				scopes: []
			}
		};
		return __toCommonJS(pgsql_exports);
	})();
	return moduleExports;
});
